package com.fengze.business.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.fengze.common.annotation.Excel;
import com.fengze.common.core.domain.BaseEntity;

/**
 * 收款对象 fz_receive_payment
 * 
 * @author lug
 * @date 2024-12-10
 */
public class ReceivePayment extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 项目成员名称 */
    private Long id;

    /** 收款日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "收款日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date receivedDate;

    /** 收款金额 */
    @Excel(name = "收款金额")
    private BigDecimal receiveMoney;

    /** 收款方式编码 */
    @Excel(name = "收款方式编码")
    private String receiveMethodCode;

    /** 收款方式 */
    @Excel(name = "收款方式")
    private String receiveMethod;

    /** 关联项目主键 */
    @Excel(name = "关联项目主键")
    private Long projectId;

    /** 关联项目名称 */
    @Excel(name = "关联项目名称")
    private String projectName;

    /** 创建用户id */
    @Excel(name = "创建用户id")
    private Long userId;

    /** 创建部门id */
    @Excel(name = "创建部门id")
    private Long deptId;

    /** 文件存放路径 */
    @Excel(name = "文件存放路径")
    private String fileUrl;

    /** 合同名称 */
    @Excel(name = "合同名称")
    private String contractName;

    /** 合同id */
    @Excel(name = "合同id")
    private Long contractId;

    /** 登记人姓名 */
    @Excel(name = "登记人姓名")
    private String createUserName;

    /** 开票情况编码 */
    @Excel(name = "开票情况编码")
    private String invoiceStatusCode;

    /** 开票情况 */
    @Excel(name = "开票情况")
    private String invoiceStatus;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setReceivedDate(Date receivedDate) 
    {
        this.receivedDate = receivedDate;
    }

    public Date getReceivedDate() 
    {
        return receivedDate;
    }
    public void setReceiveMoney(BigDecimal receiveMoney) 
    {
        this.receiveMoney = receiveMoney;
    }

    public BigDecimal getReceiveMoney() 
    {
        return receiveMoney;
    }
    public void setReceiveMethodCode(String receiveMethodCode) 
    {
        this.receiveMethodCode = receiveMethodCode;
    }

    public String getReceiveMethodCode() 
    {
        return receiveMethodCode;
    }
    public void setReceiveMethod(String receiveMethod) 
    {
        this.receiveMethod = receiveMethod;
    }

    public String getReceiveMethod() 
    {
        return receiveMethod;
    }
    public void setProjectId(Long projectId) 
    {
        this.projectId = projectId;
    }

    public Long getProjectId() 
    {
        return projectId;
    }
    public void setProjectName(String projectName) 
    {
        this.projectName = projectName;
    }

    public String getProjectName() 
    {
        return projectName;
    }
    public void setUserId(Long userId) 
    {
        this.userId = userId;
    }

    public Long getUserId() 
    {
        return userId;
    }
    public void setDeptId(Long deptId) 
    {
        this.deptId = deptId;
    }

    public Long getDeptId() 
    {
        return deptId;
    }
    public void setFileUrl(String fileUrl) 
    {
        this.fileUrl = fileUrl;
    }

    public String getFileUrl() 
    {
        return fileUrl;
    }
    public void setContractName(String contractName) 
    {
        this.contractName = contractName;
    }

    public String getContractName() 
    {
        return contractName;
    }
    public void setContractId(Long contractId) 
    {
        this.contractId = contractId;
    }

    public Long getContractId() 
    {
        return contractId;
    }
    public void setCreateUserName(String createUserName) 
    {
        this.createUserName = createUserName;
    }

    public String getCreateUserName() 
    {
        return createUserName;
    }
    public void setInvoiceStatusCode(String invoiceStatusCode) 
    {
        this.invoiceStatusCode = invoiceStatusCode;
    }

    public String getInvoiceStatusCode() 
    {
        return invoiceStatusCode;
    }
    public void setInvoiceStatus(String invoiceStatus) 
    {
        this.invoiceStatus = invoiceStatus;
    }

    public String getInvoiceStatus() 
    {
        return invoiceStatus;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("receivedDate", getReceivedDate())
            .append("receiveMoney", getReceiveMoney())
            .append("receiveMethodCode", getReceiveMethodCode())
            .append("receiveMethod", getReceiveMethod())
            .append("projectId", getProjectId())
            .append("projectName", getProjectName())
            .append("userId", getUserId())
            .append("deptId", getDeptId())
            .append("createTime", getCreateTime())
            .append("createBy", getCreateBy())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("fileUrl", getFileUrl())
            .append("contractName", getContractName())
            .append("contractId", getContractId())
            .append("remark", getRemark())
            .append("createUserName", getCreateUserName())
            .append("invoiceStatusCode", getInvoiceStatusCode())
            .append("invoiceStatus", getInvoiceStatus())
            .toString();
    }
}
